package cn.zhfeat.utils;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;


/**
 * 
 * @explain 获取cookie的工具类
 * @author LeeX
 * @date 2017年6月7日
 */
public class CookieUtil {

	//定义一个hashset
	public static Map<String,String> cookieMap ;
	
	/**
	 * 
	 * @explain 获取cookie的set集合，方便取值
	 * @author LeeX
	 * @date 2017年6月7日 下午3:17:32
	 */
	public static Map<String,String> getCookieSet(Cookie[] cookies){
		if(cookies != null){
			cookieMap = new HashMap<String,String>();
			for (Cookie cookie : cookies) {
				cookieMap.put(cookie.getName(), cookie.getValue());
			}
		}
		return cookieMap;
	}
	public static HttpServletResponse setCookie(HttpServletResponse response, String name, String value,int time) {
        // new一个Cookie对象,键值对为参数
        Cookie cookie = new Cookie(name, value);
        // tomcat下多应用共享
        cookie.setPath("/");
        // 如果cookie的值中含有中文时，需要对cookie进行编码，不然会产生乱码
        try {
            URLEncoder.encode(value, "utf-8");
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        cookie.setMaxAge(time);
        // 将Cookie添加到Response中,使之生效
        response.addCookie(cookie); // addCookie后，如果已经存在相同名字的cookie，则最新的覆盖旧的cookie
        return response;
    }
}
